package com.sgam.mf.domain.ref;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;
import org.springframework.format.annotation.DateTimeFormat;

import com.sgam.utils.CustomDateDeserializer;
import com.sgam.utils.CustomDateSerializer;


@Entity
@Table(name = "REF_APPLICATION_PERS_FIZ_ADD_FIELDS")
public class RefApplicationPersFizAddFields {
	
	@Id
	@Column(name = "id", nullable = true) 
	@GeneratedValue
	private Integer id;
	
	@Column(name = "label") 
	private String label;
	
	@Column(name = "string_type") 
	private Integer stringType;
	
	@Column(name = "number_type") 
	private Integer numberType;
	
	@Column(name = "date_type") 
	private Integer dateType;
	
	@Column(name = "status", nullable = true) 
	private Integer status;
	
	@Column(name = "updated_by_fk", nullable = true) 
	private Integer updatedByFk;
	
	@JsonSerialize(using = CustomDateSerializer.class)
	@JsonDeserialize(using = CustomDateDeserializer.class)
	@DateTimeFormat(pattern="dd.MM.yyyy")
	@Column(name = "updated_date", nullable = true) 
	private Date updatedDate;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getLabel() {
		return label;
	}

	public void setLabel(String label) {
		this.label = label;
	}

	public Integer getStringType() {
		return stringType;
	}

	public void setStringType(Integer stringType) {
		this.stringType = stringType;
	}

	public Integer getNumberType() {
		return numberType;
	}

	public void setNumberType(Integer numberType) {
		this.numberType = numberType;
	}

	public Integer getDateType() {
		return dateType;
	}

	public void setDateType(Integer dateType) {
		this.dateType = dateType;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Integer getUpdatedByFk() {
		return updatedByFk;
	}

	public void setUpdatedByFk(Integer updatedByFk) {
		this.updatedByFk = updatedByFk;
	}

	public Date getUpdatedDate() {
		return updatedDate;
	}

	public void setUpdatedDate(Date updatedDate) {
		this.updatedDate = updatedDate;
	}


	
}
